<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="../js/vue.js"></script>
</head>
<body>
<div id="div1">
    <!--在页面中使用组件-->
    <button-counter></button-counter>
    <HelloWorld></HelloWorld>
    <hr>
    <hello-world></hello-world>

</div>


<script type="application/javascript">
    /*
    *   组件注册
    *       1.data：是必须的函数
    *       2.template：模板定义为多行的时候使用   `  `   有多个button要使用 div
    *       3.采用驼峰式的规则命名,   在页面中使用的时候，也的使用  -     <hello-world>
    *       4.组件何以互相套用  在模板内直接调用其他的组件名称，不需要加  -
    *
    * */
    Vue.component("HelloWorld", {
        data: function () {
            return{
                msg: "HelloWorld",
            }
        },
        //定义模板
        template: '<div>{{msg}}</div>',
        methods:{
            handle: function () {
                this.count += 1;
            },
        }
    });



    Vue.component("button-counter", {
        data: function () {
            return{
                count: 0,
            }
        },
        //定义模板
        template: `
          <div>
          <button @click="handle">点击{{ count }}</button>
          <button @click="handle">HelloWorld</button>
            <HelloWorld></HelloWorld>     <!--组件互相套用  直接写组件  -->
          </div>
        `,
        methods:{
            handle: function () {
                this.count += 1;
            },
        }
    });

    const vm = new Vue({
        el: "#div1",
        data: {

        },

    })
</script>
</body>
</html>